    public class Demo1 {
        public static void main(String[] args) {
            Object locker1=new Object();
            Object locker2=new Object();
            Thread t1=new Thread(()->{
               synchronized (locker1){
                   try {
                       Thread.sleep(1000);
                   } catch (InterruptedException e) {
                       e.printStackTrace();
                   }

                   synchronized (locker2){
                       System.out.println("t1线程两个锁都获取到了");
                   }
               }
            });

            Thread t2=new Thread(()->{
                synchronized (locker2){
                    try {
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }

                    synchronized (locker1){
                        System.out.println("t1线程两个锁都获取到了");
                    }
                }
            });

            t1.start();
            t2.start();
        }
    }
